package my.graduation.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import my.graduation.dto.*;
import my.graduation.entity.Doctor;
import my.graduation.result.Result;
import my.graduation.vo.DoctorLoginVO;
import my.graduation.vo.DoctorVO;

import java.util.List;

/**
 * @Author: RavenLyn
 * @Date: 2024-11-27
 */
public interface DoctorService extends IService<Doctor> {
    /**
     * 医生登录
     * @param dto
     * @return
     */
    Result<DoctorLoginVO> login(EmployeeLoginDto dto);

    /**
     * 医生登出
     * @param dto
     * @return
     */
    Result logout(EmployeeLogoutDto dto);

//    Result<Page<DoctorVO>> getList(int pageNum, int pageSize);
//
//    Result<Page<DoctorVO>> getListByCon(DoctorInfoDto dto, int pageNum, int pageSize);

    Result<List<DoctorVO>> getList();

    Result<List<DoctorVO>> getListByCon(DoctorInfoDto dto);

    Result add(DoctorInfoDto dto);

    Result update(DoctorInfoDto dto);

    Result delete(DoctorInfoDto dto);

    Result<DoctorVO> getPersonal(DoctorInfoDto dto);

    Result repass(RepassDto dto);

}
